/* Hardened fixed bottom bar for mobile + iOS */
.fixed-bottom-section {
  position: fixed !important;
  left: 0;
  right: 0;
  bottom: 0 !important; /* sits on bottom edge */
  width: 100vw;         /* avoid parent width quirks */
  margin: 0;
  background: #ffffff;
  padding: 12px 20px;
  padding-bottom: calc(12px + env(safe-area-inset-bottom)); /* iPhone notch */
  box-shadow: 0 -2px 10px rgba(0,0,0,0.15);
  z-index: 2147483647;  /* above chat widgets, cookie bars, etc. */
  display: flex;
  justify-content: center;
  align-items: center;
  transform: translateZ(0);         /* fix iOS repaint issues */
  -webkit-transform: translateZ(0);
}

/* Optional slide-up entrance (runs once) */
.fixed-bottom-section.appear {
  animation: ek-slide-up 0.45s ease-out forwards;
}
@keyframes ek-slide-up {
  from { transform: translateY(120%) translateZ(0); }
  to   { transform: translateY(0) translateZ(0); }
}

/* Make room for floating chat bubbles on small screens (tweak if needed) */
:root { --fab-offset: 0px; } /* set to 64px if you have a WhatsApp bubble */
@media (max-width: 768px) {
  .fixed-bottom-section {
    padding: 10px 14px;
    bottom: var(--fab-offset) !important;
  }
}

/* Ensure page content isn't hidden behind the bar */
body { padding-bottom: 90px; }             /* desktop baseline */
@media (max-width: 768px) {
  body { padding-bottom: calc(80px + var(--fab-offset)); }
}
